package uid.jsf;

import java.util.ArrayList;
import java.util.List;


public class Column implements Composite {

	private List<Componente> componentes;
	private String cabecalho;

	public Column() {
		componentes = new ArrayList<Componente>();
	}

	public Column(String cabecalho) {
		this.cabecalho = cabecalho;
		componentes = new ArrayList<Componente>();
	}

	@Override
	public void adicionarComponente(Componente comp) {

		this.componentes.add(comp);

	}

	public void setCabecalho(String cabecalho) {
		this.cabecalho = cabecalho;
	}

	public String getCabecalho() {
		return cabecalho;
	}

	@Override
	public List<Componente> getComponentes() {
		return this.componentes;
	}

	public String getJSF() {
		String r = "<h:column>" + "\n";
		r += "<f:facet name=\"header\">" + "\n";
		r += new OutputText(this.cabecalho, this.cabecalho).getJSF() + "\n";
		r += "</f:facet>" + "\n";

		for (Componente c : this.componentes) {
			r += c.getJSF() + "\n";
		}

		r += "</h:column>" + "\n";

		return r;
	}
}
